package com.example.pets.model.datasource;

import androidx.lifecycle.LiveData;

import com.example.pets.model.entities.Lost;


import java.util.List;

public interface LostDataSource {

    /**
     * 根据 lid 获取单个丢失报告
     */
    LiveData<Lost> getLostById(String lid);

    /**
     * 添加一个丢失报告到 Firestore
     */
    LiveData<Boolean> addLost(Lost lost);

    /**
     * 更新整个丢失报告文档（覆盖写）
     */
    LiveData<Boolean> updateLost(String lid, Lost lost);

    /**
     * 删除丢失报告
     */
    LiveData<Boolean> deleteLost(String lid);

    /**
     * 获取某个用户的所有丢失报告
     */
    LiveData<List<Lost>> getLostByUser(String userRef);

    /**
     * 获取所有丢失报告，实时监听
     */
    LiveData<List<Lost>> getAllLostReports();

}

